package com.acjava.chatgpt.domain.chat;

import com.acjava.chatgpt.domain.other.Usage;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @Author loujm  acjava.com @铭轩
 * @Description 对话请求结果信息  ChatGPT官网文档： <a href="https://platform.openai.com/docs/api-reference/chat/object"/>
 * @Date 2024/8/1 下午11:56
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class ChatCompletionResponse implements Serializable {

    /**
     * ID 聊天完成的唯一标识符
     */
    private String id;
    /**
     * 对象类型 对象类型，始终为 chat.completion
     */
    private String object;
    /**
     * 模型
     */
    private String model;
    /**
     * 对话
     */
    private List<ChatChoice> choices;
    /**
     * 创建
     */
    private long created;
    /**
     * 耗材
     */
    private Usage usage;
    /**
     * 该指纹代表模型运行时使用的后端配置。
     * https://platform.openai.com/docs/api-reference/chat
     */
    @JsonProperty("system_fingerprint")
    private String systemFingerprint;
}
